#!/usr/bin/env python
# -*- coding: utf-8 -*-

# @Time     :2020/11/25
# @Author   :Changshu
# @File     :Exercise_492.py
# 492. 设计矩阵

# 1. 你设计的矩形页面必须等于给定的目标面积。

# 2. 宽度 W 不应大于长度 L，换言之，要求 L >= W ，且为正整数

# 3. 长度 L 和宽度 W 之间的差距应当尽可能小。

import time

'''倒着遍历，超时，用时：11.812，这个方法有点蠢
def constructRectangle(area: int) -> list:
	r=[]
	index=-1
	count=index
	gap=10000000
	n=area//2 if area%2==1 else area//2-1
	for i in range(area,n,-1):
		if area%i==0:
			index+=1
			t=area//i
			r.append([i,t])
			if i-t<gap:
				gap=i-t
				count = index
	return r[count]
'''

'''直接从中间开始找，找到了就返回，解答错误
def constructRectangle(area: int) -> list:
	r=[]
	if area == 2:
		return [2, 1]
	n = area // 2 if area % 2 == 0 else area // 2+1
	for i in range(n,area+1):
		if area%i==0:
			r=[i,area//i]
			break;
	return r
'''
def constructRectangle(area: int) -> list:
	width=int(area**0.5)
	while area%width!=0:
		width-=1
	return [area//width,width]




if __name__ == '__main__':
	startTime=time.time()
	# area=82341254
	area=4
	# area =122122
	print(constructRectangle(area))
	print("运行时间:{}".format(time.time()-startTime))


